<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Features</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Bochs User Manual"
HREF="index.html"><LINK
REL="UP"
TITLE="Introduction to Bochs"
HREF="introduction.html"><LINK
REL="PREVIOUS"
TITLE="Third Party Software Licensing and Temporary Files"
HREF="thirdparty.html"><LINK
REL="NEXT"
TITLE="Supported Platforms"
HREF="supported-platforms.html"></HEAD
><BODY
CLASS="SECTION"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Bochs User Manual</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="thirdparty.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 1. Introduction to Bochs</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="supported-platforms.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECTION"
><H1
CLASS="SECTION"
><A
NAME="FEATURES"
>1.7. Features</A
></H1
><P
>The following table shows the features of Bochs and which platforms they
currently work with.</P
><DIV
CLASS="TABLE"
><A
NAME="AEN83"
></A
><P
><B
>Table 1-1. Bochs Features</B
></P
><TABLE
BORDER="1"
RULES="all"
CLASS="CALSTABLE"
><COL><COL><COL><THEAD
><TR
><TH
>Feature</TH
><TH
>Supported?</TH
><TH
>Description</TH
></TR
></THEAD
><TBODY
><TR
><TD
>configure script</TD
><TD
>Yes</TD
><TD
>Bochs uses GNU autoconf to configure Makefiles and headers.
    Autoconf helps Bochs to compile on a wide variety of platforms.
    </TD
></TR
><TR
><TD
>386,486,Pentium Emulation</TD
><TD
>Yes</TD
><TD
>Bochs can be configured to emulate one of several families of Intel hardware. Some Pentium features are incomplete, such as SMM (System Management Mode).</TD
></TR
><TR
><TD
>P6 and later CPU Emulation</TD
><TD
>Yes</TD
><TD
>Bochs can be configured to emulate any P6 family processor including optional MMX and SSEx instructions.
    </TD
></TR
><TR
><TD
>x86-64 Extensions Emulation</TD
><TD
>Yes</TD
><TD
>Bochs can be configured to emulate x86-64 with many recent Intel and AMD extensions.</TD
></TR
><TR
><TD
>Command Line Debugger</TD
><TD
>Yes</TD
><TD
>Powerful command line debugger (optional) that lets you stop
    execution and examine registers and memory, set breakpoints, etc.
    </TD
></TR
><TR
><TD
>GUI Debugger</TD
><TD
>Yes</TD
><TD
>Chourdakis Michael and Bruce Ewing contributed very powerful GUI frontend for Bochs internal debugger.
    GUI debugger frontend is supported for Win32 and GTK2 hosts.
    </TD
></TR
><TR
><TD
>Floating Point</TD
><TD
>Yes</TD
><TD
>Uses software floating point engine based on <A
HREF="http://www.jhauser.us/arithmetic/SoftFloat.html"
TARGET="_top"
>SoftFloat floating point emulation library</A
>.
    </TD
></TR
><TR
><TD
>Enhanced BIOS</TD
><TD
>Yes</TD
><TD
>Implements ElTorito, EDD v3.0, basic APM feature, PCIBIOS features
    and the PCI interrupt routing table. The latest version of the Bochs BIOS
    has a 32-bit init for ACPI, SMM and SMP. Bochs also known to work with recent
    <A
HREF="http://www.seabios.org/"
TARGET="_top"
>SeaBIOS</A
> images.
    </TD
></TR
><TR
><TD
>VGA</TD
><TD
>Yes</TD
><TD
>VGA color graphics emulation in a window.
    </TD
></TR
><TR
><TD
>VBE (VESA) Support</TD
><TD
>Yes</TD
><TD
>Currently resolutions up to 2560x1600x32bpp are supported.
    You must enable VBE with the VGA extension option and use the LGPL'd VGABIOS.
    For more information see <A
HREF="vesa-notes.html"
>Section 8.19</A
>.
    </TD
></TR
><TR
><TD
>Cirrus Logic video card</TD
><TD
>Yes</TD
><TD
>Cirrus Logic CL-GD5430 ISA or CL-GD5446 PCI video card support.
      For more information see <A
HREF="cirrus-notes.html"
>Section 8.20</A
>.</TD
></TR
><TR
><TD
>3D video card</TD
><TD
>Yes</TD
><TD
>Some of the 3dfx Voodoo graphics adapter models are supported now.
      The code is still experimental, but at least the Voodoo1 is known to work.
      For more information see <A
HREF="voodoo-notes.html"
>Section 8.21</A
>.</TD
></TR
><TR
><TD
>Plug&amp;play monitor</TD
><TD
>Yes</TD
><TD
>VESA DDC is now supported by all VGA compatible display adapters.
    The LGPL'd VGABIOS has been updated use this feature for both the VBE and
    Cirrus version. The interface reports a plug&amp;play monitor called
    "Bochs Screen".
    </TD
></TR
><TR
><TD
>Floppy disk</TD
><TD
>Yes</TD
><TD
>Supports floppy disk images on all platforms: 2.88M 3.5", 1.44M 3.5", 1.2M 5.25",
    720K 3.5" and 360K 5.25". On Unix and Windows NT/2000/XP, Bochs can access the
    physical floppy drive. It is also possible to use a local directory as VFAT media
    (1.44M only).
    </TD
></TR
><TR
><TD
>Multiple ATA channels</TD
><TD
>Yes</TD
><TD
>Emulates up to 4 ATA channels. Up to 8 ATA/ATAPI emulated devices can be attached,
    two per ATA channel.
    So you can have eight hard disks or seven hard disks and a CD-ROM or four hard
    disks and four CD-ROMs, or one hard disk and seven CD-ROMs, etc...
    </TD
></TR
><TR
><TD
>Hard disk</TD
><TD
>Yes</TD
><TD
>Emulates ATA-6/IDE hard drives via image files.  Physical
    hard disk access is supported on some architecture, but NOT recommended, primarily for safety reasons.
    With LBA48 support, hard disks up to 255TB are supported, on any platform that support large files access.
    It is also possible to use a local directory as VFAT drive.
    </TD
></TR
><TR
><TD
>CD-ROM</TD
><TD
>Yes</TD
><TD
>Emulates ATAPI-4/IDE CD-ROM.  The CD-ROMs can read from an ISO disk image
    on any platform. On Windows (NT/2000/XP/Vista), Linux, SunOS, FreeBSD,
    NetBSD, OpenBSD, Amiga/MorphOS and MacOSX, Bochs can read from the
    physical CD-ROM drive. The Bochs BIOS supports booting from the first CD-ROM drive.
    </TD
></TR
><TR
><TD
>Keyboard</TD
><TD
>Yes</TD
><TD
>Emulates a PS/2 keyboard with North American key mappings. Optional keyboard layout
    remapping files are provided to support localized keyboard in X11 (Belgian, Danish, French,
    German, Italian, Russian, Slovenian, Spanish, Swedish, U.K.) and SDL/SDL2
    (German).
    </TD
></TR
><TR
><TD
>Mouse</TD
><TD
>Yes</TD
><TD
>Emulates a serial, PS/2, bus or USB mouse with 3 buttons + optional mouse
    wheel support. There is also a USB tablet emulation available.
    </TD
></TR
><TR
><TD
>Sound card</TD
><TD
>Yes</TD
><TD
>Emulates a Sound Blaster 16 card (ISA, no plug&amp;play) or an
    ES1370 PCI card. The SB16 emulation provides wave input / output, the OPL3
    chip, the external MIDI port and volume control for wave and FM. The ES1370
    provides wave input / output, the MIDI UART port and volume control for
    wave output. On Windows, Linux, FreeBSD, MacOS 9, MacOSX and all platforms
    supported by SDL, the output can be sent to the host computer's sound
    system. For the SB16, see the <A
HREF="../development/sb16-emulation-basics.html"
TARGET="_top"
>developer documentation</A
>
    for details.
    </TD
></TR
><TR
><TD
>Network card</TD
><TD
>Yes</TD
><TD
>Emulates an NE2000 compatible network card (ISA / PCI) or an Intel(R)
    82540EM Gigabit Ethernet adapter (PCI). On Windows NT/2000, Linux, FreeBSD,
    and NetBSD, Bochs will forward packets to and from the
    operating system so that the guest OS can talk on the physical network.
    Unfortunately, on some platforms the guest OS can talk to any machine on
    the network BUT NOT the host machine.  On Windows and on systems that
    allow the TAP or TUN/TAP interface, there is no such limitation.  Often
    the host machine may be configured so the guest OS has access to the
    internet. On MacOSX, you may download the TUN driver from:
    <A
HREF="http://chrisp.de/en/projects/tunnel.html"
TARGET="_top"
>http://chrisp.de/en/projects/tunnel.html</A
>
    </TD
></TR
><TR
><TD
>Parallel Port</TD
><TD
>Yes</TD
><TD
>Parallel port emulation was added by Volker Ruppert for Bochs 1.3.
    Data that is sent to the parallel port by the guest OS can be saved into a
    file or sent directly into the parallel port device (Unix only).
    </TD
></TR
><TR
><TD
>Serial Port</TD
><TD
>Yes</TD
><TD
>The serial port (16550A UART emulation) is usable, on GNU/Linux,
    NetBSD, OpenBSD, FreeBSD and MacOSX as host and guest. On other OSes the
    emulation is present, but the connection to hard- or software of the host is
    not implemented yet. Up to 4 ports are available.
    </TD
></TR
><TR
><TD
>Gameport</TD
><TD
>Yes</TD
><TD
>Emulates a standard PC gameport. The connection to a real joystick is
    currently supported on Linux and win32 only.
    </TD
></TR
><TR
><TD
>PCI</TD
><TD
>Yes</TD
><TD
>Emulates most of the i430FX, i440FX or i440BX PCI chipset.
    The Host-to-PCI bridge, the PCI-to-ISA bridge and the PCI IDE controller
    (PIIX3/PIIX4) are available. For PCI cards there are 5 PCI slots supported.
    ACPI and HPET features are also available. The i440BX chipset has basic
    support for AGP.
    </TD
></TR
><TR
><TD
>USB</TD
><TD
>Yes</TD
><TD
>Four types of host controllers (UHCI, OHCI, EHCI and xHCI) and the
    devices 'mouse', 'tablet', 'keypad', 'disk', 'cdrom', 'floppy, ''hub' and
    'printer' are available. Plugging in and removing devices at runtime is
    possible. Access to real hardware is not implemented yet.
    </TD
></TR
><TR
><TD
>Plugins</TD
><TD
>Yes</TD
><TD
>Compiling gui and devices as plugins is supported on Linux, MacOS X,
    Solaris, Cygwin, MinGW/MSYS, MSVC nmake and the VS2013 IDE (workspace provided).
    </TD
></TR
><TR
><TD
>PIC</TD
><TD
>Yes</TD
><TD
>Master and slave programmable interrupt controller.
    </TD
></TR
><TR
><TD
>CMOS functions</TD
><TD
>Yes</TD
><TD
>Real time clock (RTC) and CMOS RAM are available</TD
></TR
><TR
><TD
>Dynamic Translation/Virtualization</TD
><TD
>No</TD
><TD
>Because Bochs is designed to be portable, it does not attempt
    to do any dynamic code translation or virtualization. See
    <A
HREF="introduction.html#WHATISBOCHS"
>Section 1.1</A
> for details.
    </TD
></TR
><TR
><TD
>Simulate a Multiprocessor</TD
><TD
>Yes</TD
><TD
>Bochs can be configured to simulate up to 254 processor threads.  This
    feature is still experimental, but it can boot several Linux or Windows guests
    with SMP support.  Please note that this does NOT mean that Bochs can run
    faster on a physical SMP machine.
    </TD
></TR
><TR
><TD
>Take advantage of your SMP box</TD
><TD
>Minimal</TD
><TD
>At present, Bochs only uses threads in the lowlevel sound output
    code. The simulation itself uses only one thread, so it will not run any
    faster on multiprocessor hardware.
    </TD
></TR
><TR
><TD
>Copy and Paste</TD
><TD
>Yes</TD
><TD
>Depending on the host platform, the text-mode screen text can be
    exported to the clipboard. Text in the clipboard can also be pasted, through
    Bochs, to the guest OS, as simulated keystrokes.
    </TD
></TR
></TBODY
></TABLE
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="thirdparty.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="supported-platforms.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Third Party Software Licensing and Temporary Files</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="introduction.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Supported Platforms</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>